qpid service 的root引发的权限问题

最近使用的一台虚拟机是root登录操作的,使用yum安装完qpid后,设置可以访问的用户名和密码时候,犯了一个低级错误,
直接使用下面的命令

1
saslpasswd2 -f /var/lib/qpidd/qpidd.sasldb  -u QPID qpid

使用qpid-tools查看queues的时候,发现老是出现认证无法通过,但是直接qpidd运行没有问题,
查看了一下log发现,/var/log/messages

1
unable to open Berkeley db /var/lib/qpidd/qpidd.sasldb: Permission denied

检查了一下/var/lib/qpidd/qpidd.sasldb的权限,发现用户为root(rw),难怪如此,
因为service 启动是以qpidd用户来运行的,没有w的权限。

解决方法:

设置 /var/lib/qpidd 用户和用户组为qpidd:qpidd

其实原来自己写过一篇qpid的setup的文章,都记录要配置这个,只是实际用起来偶犯健忘了。